field='COSMOS'
import pickle
import numpy as np
import pylab as plt
%matplotlib inline
obj=pickle.load(open('../XID_plus_output/XID+_'+field+'_obj.pkl', 'rb'))
from scipy.sparse import coo_matrix
iter,chains,nparam=obj['chains'].shape
snsrc=obj['snsrc']
fit_d=obj['chains'].reshape(chains*iter,nparam)
x_range=np.max(obj['x_pix'])-np.min(obj['x_pix'])
y_range=np.max(obj['y_pix'])-np.min(obj['y_pix'])
im_temp=np.empty((x_range+1,y_range+1))
im_temp[obj['x_pix']-np.min(obj['x_pix']),obj['y_pix']-np.min(obj['y_pix'])]=obj['im_pix']
from matplotlib import animation
from JSAnimation import IPython_display
fig = plt.figure()
im = plt.imshow(im_temp,vmin=-5, vmax=100, cmap=plt.get_cmap('jet'))
plt.colorbar()
plt.xlim(20,200)
plt.ylim(20,200)
(20, 200)
def animate(i):
f=coo_matrix((fit_d[i,0:-1], (range(0,snsrc+1),np.zeros(snsrc+1))), shape=(snsrc+1, 1))
rmap_temp=(obj['A']*f)
x_range=np.max(obj['x_pix'])-np.min(obj['x_pix'])
yrange=np.max(obj['y_pix'])-np.min(obj['y_pix'])
im_temp=np.empty((x_range+1,yrange+1))
im_temp[obj['x_pix']-np.min(obj['x_pix']),obj['y_pix']-np.min(obj['y_pix'])]=np.asarray(rmap_temp.todense()).reshape(-1)+np.random.randn(obj['snpix'])*obj['sig_pix']
im.set_data(im_temp)
return im,
animation.FuncAnimation(fig, animate,
frames=200, interval=30)